Random numbers can be used in a variety of different computing scenarios. One common usage scenario is cryptography, where a cryptographic key and cryptographic processes rely on generation of random numbers. The generation of random numbers oftentimes relies on the state of one or more hardware components in a computer. However, such reliance can be problematic when a virtual machine is running on the computer. A virtual machine abstracts the hardware components in a computer and presents them as virtual components to the operating system running in the virtual machine. Such virtual components can have less randomness, or entropy, than their corresponding hardware components, which can reduce the entropy of the generated numbers.